require_relative 'data/sfi'
require_relative 'data/dfi'
require_relative 'data/viasat'
require_relative 'data/previewnetworks'
require_relative 'hash'

module Shin
  module Data
    class << self
      # I don't know why I need this
      def new
        self
      end
      
      # SFI HTML
      def sfi
        @sfi ||= Sfi.new
      end
      
      # DFI API
      def dfi
        @dfi ||= Dfi.new
      end
      
      # Viasat API (Images only atm)
      def viasat
        @viasat ||= Viasat.new
      end
      
      # Previewnetworks API
      def previewnetworks
        @previewnetworks ||= Previewnetworks.new
      end
      
    end
  end
end